pacman::p_load(tidyverse, lubridate, ggstatsplot, gapminder)
swimdata <- read_csv("data/swimdata_clean.csv")
continents <- read_csv("data/continents.csv")Project
clean_time <- function(s) {
ifelse(str_detect(s, ":"), s, paste0("0:", s))
}swimdata <- left_join(swimdata, continents,
by = c('Team'='Nation'))
swimdata <- swimdata %>%
mutate(Finals_Time2 = period_to_seconds(ms(clean_time(Finals_Time)))) %>%
mutate(Distance2 = as.numeric(str_replace(Distance, "m", ""))) %>%
mutate(Average_speed = Distance2/Finals_Time2) %>%
filter(!Style %in% c('Medley', 'Relay'))
write_csv(
swimdata,
"swimdata_clean.csv",
)Average Speed
Distribution of Average Speed
Shiny: add selection for Gender, Stroke, Distance, Rounds
pacman:: p_load(ggiraph, patchwork)
swimdata$tooltip <- c(paste0(
'Average Speed = ', swimdata$Average_speed,
"\n Name = ", swimdata$Name
))
p1 <- ggplot(data=swimdata,
aes(x=Average_speed))+
geom_histogram_interactive(bins=60, aes(tooltip=swimdata$tooltip))
p2 <- ggplot(data=swimdata,
aes(x='', y=Average_speed))+
geom_boxplot()+
coord_flip()
p3 <- p2 + p1 + plot_layout(nrow = 2, heights = c(1, 5))
girafe(
ggobj = p3,
width_svg = 6,
height_svg = 6*0.618
)